<HTML><HEAD><TITLE>set_threshold(++Threshold)</TITLE>
</HEAD><BODY>[ <A HREF="index.html">library(ic)</A> | <A HREF="../../index.html">Reference Manual</A> | <A HREF="../../fullindex.html">Alphabetic Index</A> ]
<H1>set_threshold(++Threshold)</H1>
Sets the propagation threshold.
<DL>
<DT><EM>Threshold</EM></DT>
<DD>New threshold (float)
</DD>
</DL>
<H2>Description</H2>
<P>
   Set the threshold to Threshold, which is a small floating-point number.
   Subsequent to this, bounds updates to non-integer variables are only
   performed if the change in the bounds exceeds this threshold (in both
   absolute and relative terms).</P><P>

   The default threshold is 1e-8.</P><P>

   Limiting the amount of propagation is important for efficiency.  A higher
   threshold speeds up computations, but reduces precision and may in the
   extreme case prevent the system from being able to locate individual
   solutions.</P><P>

   Note that if the threshold is reduced using this predicate (requiring a
   higher level of precision), the current state of the system may not be
   consistent with respect to the new threshold.  If it is important that
   the new level of precision be realised for all or part of the system
   before computation proceeds, use set_threshold/2 instead.</P>

<H3>Modes and Determinism</H3><UL>
<LI>set_threshold(++) is det
</UL>
<H2>See Also</H2>
<A HREF="../../lib/ic/get_threshold-1.html">get_threshold / 1</A>, <A HREF="../../lib/ic/set_threshold-2.html">set_threshold / 2</A>
</BODY></HTML>
